{% load static %}
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>后台管理-登陆</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta http-equiv="Access-Control-Allow-Origin" content="*">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="format-detection" content="telephone=no">

    <!-- 引入核心的css文件 -->
    <link href="{% static "layui/css/layui.css" %}" rel="stylesheet" media="all">
    <!-- 引入核心的js文件-->
    <script src="{% static "layui/layui.js" %}"></script>

    <!-- 新 Bootstrap5 核心 CSS 文件 -->
    <link rel="stylesheet" href="{% static "css/bootstrap.min.css" %}" type="text/css">
    <script src="{% static "js/jquery-3.6.0.min.js" %}"></script>
    <!--  popper.min.js 用于弹窗、提示、下拉菜单 -->
    <script src="{% static "js/2.11.5popper.min.js" %}"></script>

    <!-- 最新的 Bootstrap5 核心 JavaScript 文件 -->
    <script type="text/javascript" src="{% static "js/bootstrap.min.js" %}"></script>

    <script charset="utf-8" type="text/javascript" src="{% static "js/jquery.particleground.min.js" %}"></script>
    <!-- 网页粒子插件-->
    <!--[if lt IE 9]>
    <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
    <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->

    <style>
        html, body {
            width: 100%;
            height: 100%;
            overflow: hidden
        }

        body {
            background: #1E9FFF;
        }

        body:after {
            content: '';
            background-repeat: no-repeat;
            background-size: cover;
            -webkit-filter: blur(3px);
            -moz-filter: blur(3px);
            -o-filter: blur(3px);
            -ms-filter: blur(3px);
            filter: blur(3px);
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: -1;
        }

        .layui-container {
            width: 100%;
            height: 100%;
            overflow: hidden
        }

        .admin-login-background {
            width: 360px;
            height: 300px;
            position: absolute;
            left: 50%;
            top: 40%;
            margin-left: -180px;
            margin-top: -100px;
        }

        .logo-title {
            text-align: center;
            letter-spacing: 2px;
            padding: 14px 0;
        }

        .logo-title h1 {
            color: #1E9FFF;
            font-size: 25px;
            font-weight: bold;
        }

        .login-form {
            background-color: #fff;
            border: 1px solid #fff;
            border-radius: 3px;
            padding: 14px 20px;
            box-shadow: 0 0 8px #eeeeee;
        }

        .login-form .layui-form-item {
            position: relative;
        }

        .login-form .layui-form-item label {
            position: absolute;
            left: 1px;
            top: 1px;
            width: 38px;
            line-height: 36px;
            text-align: center;
            color: #d2d2d2;
        }

        .login-form .layui-form-item input {
            padding-left: 36px;
        }


        .captcha {
            width: 45%;
            display: inline-block;
        }

        .captcha-img {
            display: inline-block;
            width: 52%;
            float: right;
        }

        .captcha-img img {
            height: 34px;
            border: 1px solid #e6e6e6;
            height: 36px;
            width: 100%;
        }
    </style>
</head>
<body>
<div class="layui-container">
    <div class="admin-login-background">
        <div class="layui-form login-form">
            <form>
                {% csrf_token %}   <!--  表格提交，都要携带csrf_token ，后边多个文件中都有-->
            </form>
            <form class="layui-form login-bottom" action="">
                <div class="layui-form-item logo-title">
                    <h1>后台登录</h1>
                </div>
                <div class="layui-form-item ">
                    <label class="layui-icon layui-icon-username" for="username"></label>
                    <input type="text" name="username" lay-verify="required|account" placeholder="用户名"
                           autocomplete="off" class="layui-input">
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-password" for="password"></label>
                    <input type="password" name="password" lay-verify="required|password" placeholder="密码"
                           autocomplete="off" class="layui-input">
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-vercode" for="captcha"></label>
                    <input type="text" name="captcha" lay-verify="required|captcha" placeholder="验证码"
                           autocomplete="off" class="layui-input verification captcha">
                    <div class="captcha-img">
                        <img src="{% url 'get_code' %}" id="captchaPic">
                    </div>
                </div>
                <div class="layui-form-item">
                    {% csrf_token %}
                    <input type="checkbox" name="rememberMe" value="true" lay-skin="primary" title="记住密码">
                </div>
                <div class="layui-form-item">
                    <button class=" layui-btn layui-btn-normal layui-btn-fluid" lay-submit=""
                            lay-filter="login">登 入
                    </button>
                </div>
            </form>
        </div>
    </div>
</div>


<script>
    layui.use(['form'], function () {
        var form = layui.form,
            layer = layui.layer;

        // 登录过期的时候，跳出ifram框架
        if (top.location != self.location) top.location = self.location;

        // 粒子线条背景
        $(document).ready(function () {
            $('.layui-container').particleground({
                dotColor: '#7ec7fd',
                lineColor: '#7ec7fd'
            });
        });

        // js点击切换验证码
        $("#captchaPic").click(function () {
            // 1 先获取标签之前的src
            let oldVal = $(this).attr('src');
            $(this).attr('src', oldVal += '?')    // 点击图片 更换验证码
        })

        // 进行登录操作
        form.on('submit(login)', function (data) {
            data = data.field;  //  这个好像是 得到 data中携带的数据
            //console.log(data)
            login_tag = true;
            if (data.username == '') {
                layer.msg('用户名不能为空');
                login_tag = false;
                return false;
            }
            if (data.password == '') {
                layer.msg('密码不能为空');
                login_tag = false;
                return false;
            }
            if (data.captcha == '') {
                layer.msg('验证码不能为空');
                login_tag = false;
                return false;
            }
            if (login_tag == true) {
                var csrf_token = $("input[name='csrfmiddlewaretoken']").val();   // ajex 提交必须携带这个csrf_token
                $.ajax({
                    url: '{% url 'login' %}',
                    type: "POST",
                    async: false,
                    dataType: "json",
                    data: {
                        'data': data,
                        'csrfmiddlewaretoken': csrf_token
                    },
                    success: function (data) {
                        login_status = data['login_status'];
                        captcha_status = data['captcha_status'];
                        if (login_status == 1 && captcha_status == 1) {
                            layer.msg('登录成功', function () {
                                window.location = '/index/';
                            });
                        } else if (login_status == 2) {
                            layer.msg('登录失败,账户名或密码错误', function () {
                                {#window.location = '/';#}
                            });
                        } else {
                            layer.msg('登录失败,验证码错误', function () {
                                {#window.location = '/';#}
                            });
                        }
                    },
                    error: function (data) {
                        alert("未知错误，请刷新页面~~");
                    }
                });
            }
            return false;
        });
    });
</script>
</body>
</html>